Method, system, and computer program product for tracking and accounting for roaming of mobile devices

ABSTRACT

Roaming of mobile devices is tracked and accounted for automatically and accurately. Revenue records are received for at least one service provider due to roaming of mobile devices within a geographical area served by the at least one service provider for mobile devices that do not have a subscription for service with the service provider for the geographic area. Expense records are received for the service provider due to roaming of mobile devices within other geographical areas served by at least one other service provider and not served by the at least one service provider. Each of the revenue and expense records is associated with a mobile device and includes a code identifying a service and a geographical area. If the codes are valid, the revenue records and expense records received over a period of time are compiled and summarized.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.14/255,254, filed Apr. 17, 2014, which is a continuation of U.S.application Ser. No. 12/876,439, filed Sep. 7, 2010 (now U.S. Pat. No.8,706,094), the entireties of which are herein incorporated byreference.

TECHNICAL FIELD

The present disclosure relates generally to telecommunications, and,more particularly, to tracking and accounting for roaming of mobiledevices.

BACKGROUND

Roaming has become popular for users of mobile communication devices,such as mobile phones. Users often carry their mobile devices outside ofareas served by their service providers or outside of areas covered bytheir service plans. The roaming use of these mobile devices needs to beaccounted for so that service providers providing services in variousareas are adequately compensated.

Currently, the tracking and journalizing of revenue and expensesassociated with both in-network roaming and out-of-network roaming is ahighly manual, resource-intensive task that provides limited detailedinformation. As the number of users of mobile devices and the trend ofroaming by such users grows, the effort in accounting for roamingcharges is anticipated to become even more burdensome.

SUMMARY

It should be appreciated that this Summary is provided to introduce aselection of concepts in a simplified form, the concepts being furtherdescribed below in the Detailed Description. This Summary is notintended to identify key features or essential features of thisdisclosure, nor is it intended to limit the scope of the invention.

According to one embodiment, a method is provided for tracking andaccounting for roaming of mobile devices. Revenue records are receivedfor at least one service provider due to roaming of mobile deviceswithin a particular geographical area served by the at least one serviceprovider for mobile devices that do not have a subscription for servicewith the at least one service provider for the particular geographicalarea. Expense records are received for the at least one service providerdue to roaming of mobile devices within other geographical areas servedby at least one other service provider and not served by the at leastone service provider. Each of the revenue records and expense records isassociated with a particular mobile device and includes a codeidentifying a particular service provider with which the particularmobile device has a subscription and a code identifying a particulargeographical area assigned to the particular mobile device. The codesidentifying the particular service provider and the particulargeographical area are validated against a list of predefined serviceproviders and predefined geographical areas. If the codes are valid, therevenue records and expense records received over a period of time arecompiled and summarized.

According to another embodiment, a system for tracking and accountingfor roaming information of mobile devices is provided. The systemincludes an interface for receiving revenue records for at least oneservice provider due to roaming of mobile devices within a particulargeographical area served by the at least one service provider for mobiledevices that do not have a subscription for service with the at leastone service provider for the particular geographical area. The interfacealso receives expense records for the at least one service provider dueto roaming of mobile devices within other geographical areas served byat least one other service provider and not served by the at least oneservice provider. Each of the revenue records and the expense records isassociated with a particular mobile device and includes a codeidentifying a particular service provider with which the particularmobile device has a subscription and a code identifying a particulargeographical area assigned to the particular mobile device. The systemfurther includes a processor for validating the codes identifying theparticular service provider and the particular geographical area againsta list of predefined service providers and predefined geographicalareas. If the codes are valid, the processor compiles the revenuerecords and expense records received over a period of time andsummarizes the compiled revenue records and expense records

According to another embodiment, a non-transitory computer readablemedium includes instructions that, when executed by a processor, causethe processor to perform a method for tracking and accounting forroaming information of mobile devices. The method includes receivingrevenue records for at least one service provider due to roaming ofmobile devices within a particular geographical area served by the atleast one service provider for mobile devices that do not have asubscription for service with the at least one service provider for theparticular geographic area and receiving expense records for the atleast one service provider due to roaming of mobile devices within othergeographical areas served by at least one other service provider and notserved by the at least one service provider. Each of the revenue recordsand the expense records is associated with a particular mobile deviceand includes a code identifying a particular service provider with whichthe particular mobile device has a subscription and a code identifying aparticular geographical area assigned to the particular mobile device.The method further includes validating codes identifying the particularservice provider and the particular geographical area against a list ofpredefined service providers and predefined geographical areas and, ifthe codes are valid, compiling the revenue records and expense recordsreceived over a period of time and summarizing the compiled revenuerecords and expense records.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an exemplary environment in which a system fortracking and accounting for roaming of mobile devices may be implementedaccording to exemplary embodiments.

FIG. 2 illustrates a block diagram of a system for tracking andaccounting for roaming of mobile devices according to an exemplaryembodiment.

FIG. 3 is a flow chart illustrating an exemplary method for tracking andaccounting for roaming of mobile devices according to an exemplaryembodiment.

DETAILED DESCRIPTION

Detailed exemplary embodiments are disclosed herein. It must beunderstood that the embodiments described and illustrated are merelyexamples that may be embodied in various and alternative forms, andcombinations thereof. As used herein, the word “exemplary” is usedexpansively to refer to embodiments that serve as examples orillustrations. The figures are not necessarily to scale, and somefeatures may be exaggerated or minimized to show details of particularcomponents. Specific structural and functional details disclosed hereinare not to be interpreted as limiting.

To aid in understanding of various embodiments, it is useful to definesome terminology associated with roaming of mobile devices. One suchterm is a System Identification Number (SID), which refers to a numberor code that is assigned to identify a particular service provider (alsoreferred to herein as a “carrier”) with which a mobile device hassubscribed to for communication services. This number identifies thesubscriber's “home” service provider. Similarly, a BusinessIdentification Number (BID) is a number or code assigned to a particularmobile device to identify a geographical area within which the mobiledevice may make and receive communications without incurring roamingcharges. This area is the subscriber's “home” area. Thus, a subscribermaking and receiving calls using a mobile device having servicecorresponding to the mobile device's assigned SID may make calls withoutroaming, as long as the mobile device stays within the geographical areacorresponding to the BID assigned to the mobile device.

If the mobile device roams out of the area corresponding to the assignedBID, the mobile device is roaming, even if the mobile device is usingthe same service provider corresponding to the assigned SID. In thisscenario, if the service provider handling a communication for a mobiledevice is the same as the SID assigned to the mobile device, thiscommunication is referred to as “intracompany roaming”. If, on the otherhand, the service provider handling a communication is different thanthat associated with the mobile device's SID, this communication isreferred to as “intercompany roaming”.

Other terminology that is useful to understand is a Transferred AccountData Interchange Group (TADIG) and a Public Land Mobile Network (PLMN).A TADIG refers to a group of service providers to which the serviceprovider providing service to a particular mobile device belongs. TADIGtesting between service providers or carriers ensures that the serviceproviders can exchange information needed for billing purposes. Thistesting may be done as part of the process of establishing a roamingagreement between carriers. TADIG TYPE may be used to segment trafficfrom different mobile/cellular technologies, e.g., GSM and CDMA. A PLMNrefers to a network that is established for providing land mobiletelecommunications services to the public.

It should be appreciated that the term “mobile device”, as used herein,refers to any mobile device capable of communicating via serviceproviders other than the service provider with which the mobile devicehas a subscription in geographical areas assigned to the mobile deviceand in geographical areas not assigned to the mobile device.

According to exemplary embodiment, a complete, automatic, end-to-endsolution is provided for the tracking and journalizing of roamingrevenue and expenses at a detailed level, e.g., at a SID/BID level andat a network technology type (e.g., TADDIG TYPE)/PLMN level. Roamingrevenue and expense records are automatically loaded, validated,compiled, and summarized, as described in further detail below.Exemplary embodiments streamline processing, eliminate human error,improve auditability, provide detailed data for analysis and free upvaluable resources. The detailed data provided allows for serviceproviders to trend profitability down to a specified level, e.g., aSID/BID, within a given market across various communication services,e.g., voice and data services. In addition, exemplary embodiments enablegeographic area trending, providing deeper insight into the negotiationand definition of financial terms between service providers or carriersserving various geographical areas.

FIG. 1 illustrates an environment 100 in which a system for tracking andaccounting for roaming of mobile devices may be implemented. For thepurposes of this disclosure, this system may be incorporated into anAccounting Subledger Processing Engine (ASPEN), identified in FIG. 1with reference number 130. Within the ASPEN system 130 are one or moreapplications, referred to herein as Roamer modules, that process roamingrecords, e.g., on a daily basis and a monthly basis, from variousclearinghouses. For ease of illustration, the Roamer modules arerepresented in FIG. 1 as an application 110, which runs on a daily bass,and as an application 120, which runs on a monthly basis. It should beappreciated, however, that there may be additional Roamer modulesrunning more or less frequently. Further, although shown as two modulesfor ease of understanding, the Roamer modules 110 and 120 may beimplemented as a single module. Further, each of the Roamer modules 110and 120 may contain sub-modules for performing specific tasks, e.g.,loading files, generating reports, generating journal entries, etc.

The information processed by the Roamer modules 110 and 120 is obtainedfrom clearinghouses provided by various carriers or service providers.The clearinghouses collect records reflecting invoice data from variouscarriers or service providers and feed summarized invoice data ofroaming customers to the Roaming modules 110 and 120. The clearinghousesdepicted in FIG. 1 are examples of various clearinghouses that collectroaming data. For example, the Circle clearinghouse 105 a may be aclearinghouse for a particular service provider, e.g., AT&T, forcollecting data regarding subscribers roaming in area served by thatservice provider's networks that are outside of their assigned BIDs. TheSyniverse clearinghouses 105 b and 105 c may be clearinghouses for othercarriers. For example, the Syniverse TAP 105 b clearinghouse may collectroaming data for GSM carriers that provide services to cellular phonesusing SIM cards. The Syniverse CIBER 105 c clearinghouse may collectroaming data for carriers that provide service for intelligent cellularphones, e.g., CDMA carriers. The RMS Carrier clearinghouses 105 d mayprovide data for every BID and data indicating which service providerprovides service for each BID.

According to an exemplary embodiment, information from the variousclearinghouses may be provided on a daily basis to the Roamer module110. As part of the daily process, the Roamer module 110 loads revenueand expense records from the clearinghouses as files, and previouslysent records are recycled or corrected. The information receivedincludes TAG data identifying when a roaming event took place. TheRoamer module 110 rerates intracompany roaming revenue and expenses,effectively eliminating intracompany revenue and expenses from the dailyrecords. The Roamer module 110 processes changes to records received ina previous file. For example, a roaming record may be received forrevenue of a particular amount for one day, and the next day, the recordmay be modified to reduce the amount of revenue. The Roamer module 110also generates general daily reports that are summarized files from theclearinghouses used for balancing/reporting on all detail recordsreceived in a day. The Roamer module 110 may also allow for some manualallocation to adjust the daily records, e.g., if overcharges appearbased on costs spread across history. Journal entries, which include theinformation generated by the Roamer daily module 110, are created andcompiled.

The clearinghouses also provide roaming invoice data deliver trafficdata to the Roamer module 120 on a monthly basis. The Roamer module 120creates a PFT feed to track minutes of use for each roaming event(including data communications, voice communications, etc.) and a SettleFeed which includes intracarrier information sent to a third party tosettle with other carriers. The Roamer module 120 also generates generalmonthly reports and generates general allocations and generaleliminations. General allocations adjust the monthly records, e.g., ifovercharges appear based on costs spread across history. According to anexemplary embodiment, general allocations are summarized by carrier, notby BID. General eliminations are generated for intranetwork roaming. TheRoamer module 120 also generates general journal entries automatically.General journal entries including data generated by the Roamer module120 are created and compiled across a month based on records from allclearinghouses.

Journal entries from the Roamer module 110 and 120 are summarized andreported at various time intervals, e.g., on a monthly basis atdifferent times during the month, based on the settlement period of acarrier. For example, a CDMA carrier's settlement period may be from the16^(th) of one month through the 15^(th) of another month, while a GSMcarrier's settlement period may be from the 1^(st) of the month throughthe end of the month a monthly basis. These journal entries are reportedto a general ledger database, e.g., Oracle General Ledger (GL) 170 viathe ASPEN system 130 and an interface 160. Data reported via theinterface 160 contains revenue and expense of various carriers at a GLstring level. A GL string is made up of information regarding, e.g., acompany, an account, a subaccount, a cost center, and a line ofbusiness. According to an exemplary embodiment, information regarding acompany identifies a geographic area that either incurs expenses orgains revenue, and the account/subaccount information identifies the“call type” associated with an expense/revenue, e.g., air, toll, data,etc. This information may be viewed by business managers the carrierimplementing ASPEN 130. The same data is output at a much more granularlevel of detail to the Business Intelligence Database 150 via a CubeExtract 140. The information output to the Business IntelligenceDatabase 150 may include, e.g., a home BID, a serving BID, a call type,and call units (e.g., minutes, kilobytes, messages, etc.). Thisinformation is used internally by the business managers of the carrierthat owns the ASPEN system 130. The Businesses Intelligence Database 150provides low level data, while Oracle GL 170 provides high levelpostings, including journal entries.

The information reported by ASPEN 130 may also be fed back into theRoamer modules 110 and 120, e.g., for creating historical trends. Inaddition to reporting data via the ASPEN system 130, the Roamer modules110 and 120 may output data. For example, outputs from the Roamer module120 may include a PFT MOU File 190 a including a summarized minutes ofuse (MOU) file for a serving BID, which may be used fortrending/reporting purposes, e.g., for network capacity planning. AnMAS200 Feed 190 b may also be output from the Roamer module 120,containing summarized settlement data for each of a carrier's roamingpartners. This information may be used to reconcile settlement numberswith actual payouts/dollars delivered to and received from the carrier'sroaming partners. Daily operational (OP) reports 180 may be output fromthe Roamer module 110, and monthly operational (OP) reports 190 c may beoutput from the Roamer module 120. These operational reports enableauditability and ensure that proper rates are applied. For example, aSID rerate reports may show initial rates by SID, along with ratescalculated by the ASPEN system 130. This information may be used bybusiness managers to ensure that proper rates are applied (especiallyfor records involving carrier partnerships, since partners receive orare charged a percentage of revenue/cost).

FIG. 2 is a block diagram of a system for tracking and accounting forrooming revenue and expenses according to an exemplary embodiment. Thesystem ASPEN 130 includes a processor 210 that communicates with thememory 230 via, e.g., an address/data bus. The processor 210 can be anycommercially available or customer microprocessor. The memory is 230 isrepresentative of the overall hierarchy of memory devices containing thesoftware and data used to implement the functionality of the device 130.The memory 230 can include but is not limited to the following types ofdevices: processor registers, processor cache, RAM, ROM, PROM, EPROM,EEPROM, flash memory, SRAMD, DRAM other volatile memory forms, andnon-volatile, semi-permanent or permanent memory types; for example,tape-based media, optical media, solid state media, hard disks,combinations thereof, and the like.

As shown in FIG. 2, the memory 230 may include several categories ofsoftware and data used in the device system, including, applications240, a database 250, an operating system (OS) 260, and the input/output(I/O) device drivers 270 As will be appreciated by those skilled in theart, the OS 260 may be any operating system for use with a dataprocessing system. The I/O device drivers 270 may include variousroutines accessed through the OS 260 by the applications 240 tocommunicate with devices, and certain memory components. Theapplications 240 can be stored in the memory 230 and/or in a firmware(not shown) as executable instructions, and can be executed by theprocessor 210. The applications 240 may include various programs thatimplement the various features of the device 130, including Roamingmodules 110, 120 and a business rules application that containspredefined business rules to apply to data stored in the database 250.Examples of business rules that may be applied by the ASPEN systeminclude determining whether a record is booked to an intracompany GLstring or an intercarrier GL string based on whether the home BID iswholly owned by a particular carrier and whether the serving BID iswholly owned, divested, or not owned by the particular carrier. Theapplications generate data processed by the processor 210. The database250 represents the static and dynamic data used by the applications 240,the OS 260, the I/O device drivers 270 and other software programs thatmay reside in the memory. The database 250 may include, for example,received roaming records, historical roaming data, generated journalentries, etc.

While the memory 230 is illustrated as residing proximate the processor210, it should be understood that at least a portion of the memory 230can be a remotely accessed storage system, for example, a server on acommunication network, a remote hard disk drive, a removable storagemedium, combinations thereof, and the like. Thus, any of the data,applications, and/or software described above can be stored within thememory 230 and/or accessed via network connections to other dataprocessing systems (not shown) that may include a local area network(LAN), a metropolitan area network (MAN), or a wide area network (WAN),for example.

It should be understood that FIG. 2 and the description above areintended to provide a brief, general description of a suitableenvironment in which the various aspects of some embodiments of thepresent disclosure can be implemented. While the description refers tocomputer-readable instructions, the present disclosure also can beimplemented in combination with other program modules and/or as acombination of hardware and software in addition to, or instead of,computer readable instructions. The terms “application,” or variantsthereof, is used expansively herein to include routines, programmodules, programs, components, data structures, algorithms, and thelike. Applications can be implemented on various system configurations,including single-processor or multiprocessor systems, minicomputers,mainframe computers, personal computers, hand-held computing devices,microprocessor-based, programmable consumer electronics, combinationsthereof, and the like.

FIG. 3 is a flow chart illustrating a process for tracking andaccounting for roaming information of mobile devices. Revenue recordsare received at the Roamer modules 110, 120 from clearinghouses, e.g.,those represented in FIG. 1 with reference numerals 105 a, 105 b, 105 c,and 105 d, at step 310. At step 320, expense records are received at theRoamer modules 110, 120 from the clearinghouses. It should beappreciated that these records may be received on a continuous basis, adaily basis, and/or a monthly basis. Also, the records may be receivedin any order. For example, the revenue records may be received before,after, or at the same time as the expense records. Each of the revenuerecords and expense records are associated with a particular mobiledevice and include a code identifying the particular service providerwith which that mobile device has a subscription and a code identifyinga particular geographical area assigned to that mobile device. At step330, the Roamer modules 110, 120 within the ASPEN system 130 determinewhether the code identifying the particular service provider and thecode identifying the particular geographical area assigned to the mobiledevice are valid, e.g., by comparing the codes to valid lists ofpredefined service providers and predefined geographical areas served byservice providers. If the codes included in the records match codesincluded in the list, the records may be further processed by the Roamermodules 110, 120. For example, the Roamer modules 110, 120 may identifyintracompany roaming expenses and revenue and eliminate these from therecords to be reported. The Roamer modules also summarize the records asjournal entries. The ASPEN system may perform further processing, e.g.,validating that the GL string to be reported to the Oracle database isdefined by the Oracle database, validating that the journal entries arein balance, etc. Once processed, the summarized records are reported ajournal entries at step 360 by the ASPEN system 130. If the codes arenot valid the records, actions are taken based on criticality at step350. In some cases, the Roamer applications may shut down and requiremanual intervention to address invalid records. This may occur, e.g., ifthe clearinghouses send information for a BID for a specific carrierthat the Roamer modules do not recognize as being a BID for thatcarrier. Other errors that may result in invalid records may be flaggedand recycled, so that the process continues rather than shutting down.This may occur, e.g., if a correction record is received from aclearinghouse prior to the original record. The Roamer modules mayrecycle the correction record in an attempt to wait on the originalclearinghouse record.

The process shown in FIG. 3 is an iterative process, performed as oftenas desired.

The systems, methods, and computer program products described herein maybe implemented in any wireless networks that use exemplarytelecommunications standards, such as Global System for Mobilecommunications (GSM) and Universal Mobile Telecommunications System(UMTS). It should be understood, however, that the systems, methods, andcomputer program products described herein may alternatively beimplemented in wireless networks that use any existing or yet to bedeveloped telecommunications technology. Some examples of other suitabletelecommunications technologies include, but are not limited to,networks utilizing Time Division Multiple Access (TDMA), FrequencyDivision Multiple Access (FDMA), Wideband Code Division Multiple Access(WCDMA), Orthogonal Frequency Division Multiplexing (OFDM), Long TermEvolution (LTE), WIMAX and various other 2G, 2.5G, 3G, 4G, and greatergeneration technologies. Examples of suitable data bearers include, butare not limited to, General Packet Radio Service (GPRS), Enhanced Datarates for Global Evolution (EDGE), the High-Speed Packet Access (HSPA)protocol family such as, High-Speed Downlink Packet Access (HSDPA),Enhanced Uplink (EUL) or otherwise termed High-Speed Uplink PacketAccess (HSDPA), Evolved HSPA (HSPA+), and various other current andfuture data bearers.

The law does not require and it is economically prohibitive toillustrate and teach every possible embodiment of the present claims.Hence, the above-described embodiments are merely exemplaryillustrations of implementations set forth for a clear understanding ofthe principles of the invention. Variations, modifications, andcombinations may be made to the above-described embodiments withoutdeparting from the scope of the claims. All such variations,modifications, and combinations are included herein by the scope of thisdisclosure and the following claims.

What is claimed is:
 1. A method for execution within an accountingprocessing system including a processor and a memory, comprising:receiving, within the processor, revenue records for a service providerdue to roaming of a mobile device within a geographical area notassigned to the mobile device; receiving, within the processor, expenserecords for the service provider due to roaming of the mobile devicewithin the geographical area; compiling the received revenue records andthe expense records; rerating some of the compiled revenue records andexpense records; summarizing the compiled and rerated revenue recordsand expense records; recycling a correction record when the correctionrecord is received before receiving at least one revenue record or atleast one expense record associated with the correction record; andvalidating, by the processor, codes identifying a particular serviceprovider and a particular geographical area against a list of predefinedservice providers and predefined geographical areas.
 2. The method ofclaim 1 wherein the codes identifying the particular service providerwith which a particular mobile device has a subscription includes asystem identification code, and the codes identifying the particulargeographical area assigned to the particular mobile device includes abusiness identifying code.
 3. The method of claim 1, further comprisingvalidating a network technology type code identifying a type of networkto which a particular mobile device has subscribed and a codeidentifying a public land mobile network code identifying the network towhich the particular mobile device is assigned.
 4. The method of claim1, further comprising creating journal entries including the summarizedrevenue records and expense records.
 5. The method of claim 4, whereinthe journal entries reflect trends in revenue records and expenserecords received over a period of time, and wherein the journal entriesenable adjustment of roaming charges based on roaming trends.
 6. Themethod of claim 1, wherein the summarized revenue records and expenserecords are periodically reported.
 7. The method of claim 6, wherein thesummarized revenue records and expense records are periodically reportedbased upon settlement periods of the service provider.
 8. A system,comprising: a processor; and a memory containing instructions which,when executed by the processor, cause the processor to performoperations comprising: receiving revenue records for a service providerdue to roaming of a mobile device within a geographical area notassigned to the mobile device; receiving expense records for the serviceprovider due to roaming of the mobile device within the geographicalarea; compiling the received revenue records and the expense records;rerating some of the compiled revenue records and expense records;summarizing the compiled and rerated revenue records and expenserecords; recycling a correction record when the correction record isreceived before receiving at least one revenue record or at least oneexpense record associated with the correction record; and validating, bythe processor, codes identifying a particular service provider and aparticular geographical area against a list of predefined serviceproviders and predefined geographical areas.
 9. The system of claim 8,wherein the codes identifying the particular service provider with whicha particular mobile device has a subscription includes a systemidentification code, and the codes identifying the particulargeographical area assigned to the particular mobile device includes abusiness identifying code.
 10. The system of claim 8, wherein validatingincludes validating a network technology type code identifying a type ofnetwork to which a particular mobile device has subscribed and a codeidentifying a public land mobile network code identifying the network towhich the particular mobile device is assigned.
 11. The system of claim8, wherein the memory further contains instructions which, when executedby the processor, cause the processor to create journal entriesincluding the summarized revenue records and expense records.
 12. Thesystem of claim 11, wherein the journal entries reflect trends inrevenue records and expense records received over a period of time, andwherein the journal entries enable adjustment of roaming charges basedon roaming trends.
 13. The system of claim 8, wherein the summarizedrevenue records and expense records are periodically reported based uponsettlement periods of the first service provider and the second serviceprovider.
 14. A non-transitory computer readable medium having storedthereon computer-executable instructions that, when executed by aprocessor, cause the processor to perform operations, comprising:receiving revenue records for a service provider due to roaming of amobile device within a geographical area not assigned to the mobiledevice; receiving expense records for the service provider due toroaming of the mobile device within the geographical area; compiling thereceived revenue records and the expense records; rerating some of thecompiled revenue records and expense records; summarizing the compiledand rerated revenue records and the expense records; and recycling acorrection record when the correction record is received beforereceiving at least one revenue record or at least one expense recordassociated with the correction record; and validating, by the processor,codes identifying a particular service provider and a particulargeographical area against a list of predefined service providers andpredefined geographical areas.
 15. The non-transitory computer readablemedium of claim 14, wherein the codes identifying the particular serviceprovider with which a particular mobile device has a subscriptionincludes a system identification code, and the codes identifying theparticular geographical area assigned to the particular mobile deviceincludes a business identifying code.
 16. The non-transitory computerreadable medium of claim 14, wherein the instructions further cause theprocessor to validate a network technology type code identifying a typeof network to which a particular mobile device has subscribed and a codeidentifying a public land mobile network code identifying the network towhich the particular mobile device is assigned.
 17. The non-transitorycomputer readable medium of claim 14, wherein the instructions furthercause the processor to create journal entries including the summarizedrevenue records and expense records.